// 文
// 冯唐易老，李广难封
// 穷且益坚，不坠青云志向
#include<iostream>
#include<vector>
#include<algorithm>
#define ll long long int
#define MAX_N 100086
using namespace std;
ll n, ans = 0, is_over = 0;
ll a[MAX_N];
struct ccf{
    int thing, num = 0;
};
int main(){
    freopen("duel.in", "r", stdin);
    freopen("duel.out", "w", stdout);
    scanf("%lld", &n);
    for(int i = 1; i <= n; i++){
        scanf("%lld", &a[i]);
    }
    sort(a, a+n + 1);
    // for(int i = 1; i <= n; i++){
    //     // printf("%lld ", a[i]);
    // }
    // printf("\n");
    ccf b[100000];
    int b_cnt = 1;
    b[1].thing = a[1];
    b[1].num = 1;
    for(int i = 2; i <= n; i++){
        if(b[b_cnt].thing == a[i]) {
            b[b_cnt].num++;
        }else {
            b_cnt++;
            b[b_cnt].thing = a[i];
            b[b_cnt].num = 1;
        }
    }
    int temp;
    for(int i = 1 ; i <= b_cnt; i++){
        temp = max(temp,  b[i].num);
    }
    // for(int i = 1; i <= b_cnt; i++){
    //     printf("{%d %d}", b[i].thing, b[i].num);
    // }
    printf("%d\n", temp);
    return 0;
}
